The MPEG-1 standard was developed in response to the industry need of implementing an efficient way of storing and retrieving a video information on storage media of the digital type, as for example CD-ROMs. Of course, the MPEG-1 standard is also a powerful tool for efficiently storing data on similar supports such as DATs, Winchester disks, optical disks and ISDN and LAN networks. A more efficient version of the standard, called MPEG-2 has been developed in support of bitrate requirements in the field of digital video transmission applications. The standard has been generally accepted for digital TV systems, for compressing TV-resolution pictures, entirely interlaced, up to a bitrate of about 15 Mbps. A special version of the MPEG-2 standard is expected to be used in future generation HDVT systems.
The MPEG standard incorporates and utilizes important algorithms and criteria defined by previous international standards, such as, for example, the CCITT motion vectors determination algorithm H.261 and the ISO 10918 standard of the ISO JPEG Committee for the coding of still pictures. A definition of the MPEG standard (1 and 2), as well as an exhaustive description of the different techniques of implementation and the relative coding and decoding systems of the data pertaining to compressed video pictures according to the MPEG standards are described in a wealth of articles and publications on the subject, among which the following can be mentioned:
Draft International ISO/IEC DIS 13818-2 "Information technology--Generic coding of moving pictures and associated audio information";
"MPEG coding and transport system" by Leonardo Chiariglione, Digital Television Broadcasting--Proceedings;
"The MPEG video compression algorithm" by Didier J. Le Gall, Signal Processing Image Communication, Elsevier Science Publishers B.V., Vol. 4, No. 2, April 1992;
Digest No. 1995/012, Electronics Division, Institution of Electrical Engineers--London, Colloquium on: "MPEG-2--what it is and what it isn't";
"An Overview of the MPEG Compression Algorithm" Technical Note released by SGS-THOMSON MICROELECTRONICS (An 529/0294);
Datasheet "STi3500A" Datasheet of SGS-THOMSON MICROELECTRONICS; and
"STi3520A--Advanced Information for an MPEG Audio/MPEG-2 Video Integrated Decoder" (June 1995).
According to a typical architecture of an MPEG-2 decoder, such as that shown in FIG. 3 of the publication No. STi3520A relative to an MPEG Audio/MPEG-2 Video integrated decoder marketed by SGS-THOMSON MICROELECTRONICS, herein reproduced as a portion of FIG. 1, there exist well defined requirements of video memory. The video memory requirement is the capacity of an external DRAM memory that, for a PAL and NTSC application, is capable of supporting 16 Mbits PAL video signals, and can be estimated as follows.
Considering that both the MPEG-2 video decoder and the MPEG audio decoder access a unique external DRAM memory of 16 Mbits, through a common interface, the audio decoder may require access to only 65.536 bits leaving the remaining 16.711.680 bits available for satisfying the requirements of the MPEG-2 video decoder The video memory can be configured as follows.
A "Bit buffer": that is, a buffer for compressed data that the MPEG-2 standard fixes at 1.75 Mbits plus an extra amount, for example, of 810.000 bits for PAL and 685.000 bits for NTSC, in consideration of a non-ideal process of decompression actually being implemented.
A first "I-frame buffer" for the decompressed Intra-picture or briefly I-picture, in a 4:2:0 format.
A second "P-frame buffer" for the decompressed Predicted-picture or briefly P-picture, in a 4:2:0 format.
A third "B-frame buffer" for the decompressed Bidirectionally Predicted Picture or briefly B-picture, in a 4:2:0 format, eventually optimized so to require a reduced amount of memory, that is, of 0.7407 or 0.6111 of a frame, respectively, in the case of a PAL or NTSC system.
According to the present MPEG-2 standard technique, and regardless of being dealing with an I, P or B-picture, depending on the type of video standard, each "frame buffer" in the 4:2:0 format may occupy an amount of memory given by the following table.
__________________________________________________________________________
720 .times. 576 .times. 8 for the luma (luminance) (Y) 3.317.760 bits = 4.976.640 bits 360 .times. 288 .times. 8 for the U chroma (chrominance 829.440 bits 360 .times. 288 .times. 8 for the V chroma (chrominance 829.440 bits NTSC 720 .times. 480 .times. 8 for the luma (luminance) (Y) 2.764.800 bits = 4.147.200 bits 360 .times. 240 .times. 8 for the U chroma (chrominance 691.200 bits 360 .times. 240 .times. 8 for the V chroma (chrominance 691.200 bits __________________________________________________________________________
Therefore, in the case of a PAL system, which representing the most burdensome case, may serve as a reference example, the actual total amount of memory required will be given by: EQU 1.835.008+810.000+4.976.640+4.976.640+(4.976.640*0.7407)=16.284.486 bits.
This calculation takes into account a 0.7407 optimization of the B-picture frame buffer.
A further optimization, made possible by using fast synchronous memories such as SDRAM, may include carrying out the decompression of the B-picture without resorting to a storage step in the external RAM by carrying out an equivalent function internally in the integrated decoder device by a dedicated circuit block functionally placed upstream of the Display Unit.
Considering this further optimization, the video memory requirement drops to: EQU 1.835.008+810.000+4.976.640+4.976.640=12.598.288 bits
where the B-buffer is realized within the same chip containing the "core" of the decoder being required to convert the scanning of each 8*8 block, defined in the MPEG-2 compressed data stream, in that of each row of the picture (field or frame) required by the video display process of the picture itself. Such conversion macrocell is commonly referred to as "MACROBLOCK TO RASTER SCAN CONVERTER."